package controller.gui;

import java.awt.event.ActionEvent;

import javax.swing.JButton;

import gui.SecondaryMenu;
import controller.BackupMapUser;
import controller.states.MapElementToAddStateUser;

/**rappresenta un controller che pilota il pulsante OK in modo standard. Quresto modo
 * standard viene esplicitamente realizzato mediante queste operazioni:
 * <ul>
 *  <li><tt>isParameterCorrect</tt> ritorna sempre TRUE</li>
 *  <li><tt>executeOtherInstructions</tt>  imposta il <tt>userObjectToAddState</tt> a CLASSUNCHOOSEN</tt>
 *  <li>elimina la mappa di backup</li>
 * </ul>
 * 
 * questo tipo di controller è ottimale nel caso in cui il OKController non debba eseguire alcun controllo sui dati passati alla mappa (probabilmente
 * perché i controlli sono già stati eseguiti al momento dell'inserzione degli elementi nella mappa
 * 
 * @author koldar
 * @version 1.0
 */
public class DefaultOKButtonController<PANEL extends SecondaryMenu> extends OKButtonController<PANEL> implements BackupMapUser,MapElementToAddStateUser{
	
	
	public DefaultOKButtonController(JButton button, PANEL secondaryPanel) {
		super(button, secondaryPanel);
	}

	@Override
	public boolean isParametersCorrect() {
		return true;
	}
	
	@Override
	public void executeOtherInstruction(ActionEvent arg0) {
		super.executeOtherInstruction(arg0);
		//elimina della mappa di backup
		this.backupmap.setValue(null);
	}
	
	

}
